package com.linzp.bishe.controller.exception;

/**
 * @ClassName ServiceException
 * @Description 业务异常
 * @Author LinZePeng
 * @Date 2021/12/12 1:30
 * @Version 1.0
 */
public final class ServiceException extends RuntimeException
{
	private static final long serialVersionUID = 1L;

	/**
	 * 错误码
	 */
	private String code;

	/**
	 * 错误提示
	 */
	private String message;

	/**
	 * 错误明细，内部调试错误
	 *
	 */
	private String detailMessage;

	/**
	 * 空构造方法，避免反序列化问题
	 */
	public ServiceException()
	{
	}

	public ServiceException(String message)
	{
		this.message = message;
	}

	public ServiceException(String message, String code)
	{
		this.message = message;
		this.code = code;
	}

	public String getDetailMessage()
	{
		return detailMessage;
	}

	@Override
	public String getMessage()
	{
		return message;
	}

	public String getCode()
	{
		return code;
	}

	public ServiceException setMessage(String message)
	{
		this.message = message;
		return this;
	}

	public ServiceException setDetailMessage(String detailMessage)
	{
		this.detailMessage = detailMessage;
		return this;
	}
}